	function soNumero(e, obj, bPermitePontoVirgula) {
		var keynum;
		var keychar;
		var numcheck;

		if(window.event){ // IE
			keynum = e.keyCode;
		} else if(e.which){ // Netscape/Firefox/Opera
			keynum = e.which;
		}

		keychar = String.fromCharCode(keynum);
		numcheck = /\d/;

		if ((e.button == 2) || (keynum == "93")){
			obj.readOnly = true;
			setTimeout("alert('<lang:message key='js.funcao_desabilitada'/>')", 0);
			obj.readOnly = false;
			return false;
		}

		if(bPermitePontoVirgula)
			if((keynum == "188") || (keynum == "190") || (keynum == "44") || (keynum == "110") || (keynum == "194")){
				if((obj.value.indexOf(',') != -1) || (obj.value.indexOf('.') != -1) || (obj.value.length == 0)) {
					return false;
				}

				return true;
			}

		if((keynum == "8") || (keynum == "9") || (((keynum >= "96")) && ((keynum <= "105"))) || (keynum == undefined) || (keynum == "46") || (keynum == "37") || (keynum == "39"))
			return true;
		else
			return numcheck.test(keychar);
	}